forked from E3SM-Project/E3SM
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
split explicit corrections #16
Open
mark-petersen
wants to merge
5
commits into
E3SM-Ocean-Discussion:master
Choose a base branch
from
mark-petersen:mark-petersen/ocn/split-explicit-corrections
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
split explicit corrections #16
mark-petersen
wants to merge
5
commits into
E3SM-Ocean-Discussion:master
from
mark-petersen:mark-petersen/ocn/split-explicit-corrections
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@mark-petersen, as part of revisiting the mode-split integrators here, I'm also interested in how our approach compares with some of the current "better" algorithms:
Also, just to migrate some of our slack conversation yesterday:
|
mark-petersen
force-pushed
the
mark-petersen/ocn/split-explicit-corrections
branch
from
April 21, 2022 04:26
e9e8e97
to
e919f3a
Compare
@mark-petersen I did some initial testing of ideas 1-4 above but unfortunately am not seeing the best outcomes at present:
|
mark-petersen
force-pushed
the
mark-petersen/ocn/split-explicit-corrections
branch
from
October 31, 2022 15:25
2265918
to
1a151a5
Compare
xylar
pushed a commit
that referenced
this pull request
Nov 8, 2023
updating Icepack to hash 6ca316f, adding wlat for FSD, updating colpkg
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR, transplanted from MPAS-Dev/MPAS-Model#728, tests the following issues in the Split Explicit time-stepping routine:
Previously, we carried the barotropic velocity from one timestep to the next, rather than re-splitting.
Currently, the new barotropic velocity is computed from the average over the subcycles.
u = ubar + u' - btrAvg( u' )
Previously, u = ubar + u' and btrAvg( u' ) was not subtracted.
normalTransportVelocity
) to:uTr = F/H + u' - btrAvg( u' ) + uBolus - btrAvg( uBolus )
This is a simplification to remove the velocity correction term. Algebraically it is identical to before.
here:
F is the accumulated barotropic flux
H is the total column depth, including SSH, from the last time known.
u' is the baroclinic velocity from stage 1
ubar is the barotropic velocity
Previously,
normalVelocity
could deviate fromnormalTransportVelocity
and become noisy. SincenormalVelocity
does not feed back into the pressure gradient, there was no control on this noise. The previous version also used thevelocityCorrection
variable, which was extremely noisy, but also misleading, because it was really just the difference betweennormalVelocity
andnormalTransportVelocity
. There is no need forvelocityCorrection
when the velocities are built directly, as shown above.